1. Field of the Invention
This invention relates to a dual-key reflexive encryption security system, and, more particularly, to a data security system having an embedded encrypted token with various communicated control messages, including those for key management and session keys, accomplished in code.
2. Background of the Prior Art
In the past, various secure access systems or methods have been devised using a token--a physical object or hardware device that a user has in his possession when dialing into a computer. Various types of tokens are available using different schemes, among which are time-based identification and calculator-type tokens.
The time-based token is contained in a hand-held device (the token) with a small window containing an identifying number. This number changes about every 3 minutes. When signing on to a database, the security equipment is programmed to request the user's identification information. The identification of the user is linked to the token by an algorithm, and, when the identifying information is received, the security device obtains the corresponding algorithm for the specific token. During operation of the token, the algorithm is processed and generates identifying information which appears in the window of the token and changes every 3 minutes. When in response to a request for access, the same number (or, to allow for time differences, the past number or the next future number) is present at the token and at the security equipment guarding the database, access is provided to the user. All the transactions between the user and security device are public transmissions and are not encrypted.
In the calculator-type token, the user presents identifying information and optionally a password to the security equipment guarding the database and, in return, the security equipment sends a number to user. Then, the user keys the returned data into the calculator-type token which, using an algorithm, processes the data so that a different number appears in the window of the token. This number is sent by the user to the security equipment and, if the numbers both having passed through the same algorithm match, the user is allowed access to the database. All these transactions are public transmissions and are not encrypted. Some of the calculator-type tokens use the data encryption standard (DES) as the algorithm, with each calculator-type token having an individual key, but all data transmitted to and from the user to the security equipment is in the clear.
In addition to the above background information and in the course of preparing for this application, several patents became known to the inventor hereof. These patents are shown in the tabulation below.
______________________________________ ITEM NO. U.S. PAT. NO. INVENTOR ISSUE DATE ______________________________________ 1 5,237,614 Weiss, K. F. 08/17/93 2 5,175,766 Hamilton, S. B. 12/29/92 3 5,138,712 Corbin, J. R. 10/21/75 ______________________________________
In considering the various patents known to the inventor hereof the following discussion is provided:
U.S. Pat. No. 5,237,614--Weiss, K. F.
The patent to Weiss shows an integrated network security system which permits a log-on to a normally locked client on the network in response to at least one coded non-public input to the client by a user. At least a selected portion of the coded input is encrypted and sent to a network server where the user is authenticated. After authentication, the server preferably returns a decryption key, an encryption key for future use and any critical files previously stored at the server to the client. The decryption key is utilized to decrypt any material at the client which were encrypted when the client was locked, including any material sent from the server, thereby unlocking the client. The decryption key may be combined with untransmitted portions of the original coded input in a variety of ways to generate an encryption key for the next time the terminal is to be locked. When one of a variety of client locking conditions occurs, the previously generated encryption key is utilized to encrypt at least selected critical material at the client. Critical directories or the like in encrypted form may be sent to the server and a message is sent to the server that the client is locked, which message is utilized by the server to inhibit the client from further access to at least selected resources on the network.
U.S. Pat. No. 5,175,766--Hamilton, S. B.
The Hamilton patent discloses a method of communicating with a data encryption device. A data encryption device adapted for providing encryption functions such as data encryption and decryption may be controlled with an inventive signalling protocol which provides two-way symmetrical messaging. Data encryption messages are sent to a data encryption device with a message packet which includes a start of message character, a token field, a token dependent data field, a token delimiter and an end of message character. A response message is generated after the data encryption function is performed, with the exception that the token dependent data comprises data which was processed in accordance with the requested function.
U.S. Pat. No. 5,138,712--Corbin, J. R.
The patent to Corbin teaches a software application with verification and license check out functions which are normally performed by a license server of a network software license system. The encrypted license information is contained in a license token, and is sorted in the database controlled by the license server. In contrast to systems in which the license server either grants or denies the request after verifying the user's credentials, the Corbin patent teaches a license server system which finds the correct license token for the software application and transmits the license token to the licensing library. In application specific license access module attached to the application decodes the licensing token. Before updating the license token, the license status is checked by routines in the licensing library that are coupled to the software application and verify the license information. The application specific license access module then encodes the updated license token before returning it to the license server. Thus, the impact of breaching the encryption/decryption of an application is limited to only one application. As a result, improved network-wide protection against unauthorized use of software applications in a network of computers is provided.
With the various types of tokens discussed above, namely, the time-based identification and calculator-type tokens, several technical problems remain. In the time-based approach, during the time a user is attempting to sign on, there is a three-minute window for an eavesdropper who could have intercepted the data, to place a call to another database in the same network which is protected by the same security equipment. The eavesdropper is now armed with knowledge of the identifying information; where applicable, the password; and, the required response upon a challenge. All of this information has been publicly sent and is readily obtained. As specific networks or companies customarily use the same security equipment at different locations to protect the databases, each location has the same directory of users with the same identifying information and passwords and each location has the same user algorithm embedded within the security equipment.
In the case of the calculator-type token, here the technical problem is somewhat similar inasmuch as the eavesdropper can also intercept the flow of data between the caller and security equipment. Upon doing so, the eavesdropper can uncover the user identifying information, the password and the number-to-be-keyed into the calculator along with the result (the response). With the number-to-be-keyed and the response, a computer program can be developed to derive the DES key for the resulting encryption.
The inclusion herein of the above-listed patents is not intended as an admission that any such patent constitutes prior art against the claims of the present application. Applicant does not waive any right to take any action that would be appropriate to antedate or otherwise remove any listed patent as a competent reference against the claims of the present application.